package com.sg.dto.integration.rbff.common;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Objects;

/**
 * @desc BffRecycleDto
 * @使用场景
 */
@Data
public class BffRecycleDto implements Serializable {

    /**
     * 专辑文档关系ID
     */
    @ApiModelProperty("专辑文档关系ID")
    private String albumRelationId;

    /**
     * 资源文件别名
     */
    @ApiModelProperty("资源文件别名")
    private String resourceFileAlias;

    private String resourceFileId;

    /**
     * 专辑名称
     */
    @ApiModelProperty("专辑名称")
    private String albumName;

    /**
     * 冗余资源文件大小
     */
    @ApiModelProperty("冗余资源文件大小")
    private Long resourceFileSize;

    /**
     * 冗余资源文件后缀
     */
    @ApiModelProperty("冗余资源文件后缀")
    private String resourceFileExtension;

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        if (!super.equals(o)) return false;
        BffRecycleDto that = (BffRecycleDto) o;
        return albumRelationId == that.albumRelationId && resourceFileAlias == that.resourceFileAlias && resourceFileId == that.resourceFileId && albumName == that.albumName && resourceFileSize == that.resourceFileSize && resourceFileExtension == that.resourceFileExtension;
    }

    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), albumRelationId, resourceFileAlias, resourceFileId, albumName, resourceFileSize, resourceFileExtension);
    }

}
